home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1993 / MacHack 1993.toast / MacHack™ 1987-1992 / MacHack™ '90 / Utilities ƒ / MPW Tools ƒ / Simula4.07 / Simula 4.07ƒ / SInterfaces / macEventMgr.sim < prev    next >
Encoding:
Text File  |  1989-05-01  |  2.7 KB  |  102 lines  |  [TEXT/MPS ]

  1. % ---------------------------------------------------------------------------
  2. %    Class TOOLBOXEventManager
  3. %
  4. % In this module you find the programmers interface to Event
  5. % Manager.It is built on top of the TOOLBOX routines in TOOLBOXEvent.
  6. % This class is only intended to be instantiated once.
  7. %
  8. % For a description of the routines see Inside Macintosh, Toolbox Event.
  9. %
  10. %
  11. % 890317/Boris Magnusson
  12. % 890401/Göran Eriksson
  13. %
  14. % ---------------------------------------------------------------------------
  15. external class MacEvent="::SInterfaces:MacEvent";
  16. external class MacPoint="::SInterfaces:MacPoint";
  17. external class ToolboxEvent="::SInterfaces:ToolboxEvent";
  18. TOOLBOXEvent Class MacEventMgr;
  19. begin
  20. %        {for Event Manager}
  21.  
  22. %    FUNCTION EventAvail(mask: INTEGER; VAR theEvent: EventRecord): BOOLEAN;
  23.     boolean procedure EventAvail(mask,theEvent);
  24.         name theEvent;
  25.         short integer mask; ref(MacEvent) theEvent;
  26.     begin
  27.         ref(MacEvent) localEvent;
  28.         localEvent:-theEvent;
  29.         ToolboxSystemTask;
  30.         EventAvail:=ToolboxEventAvail(mask,localEvent.what);
  31.         theEvent:-localEvent;
  32.     end;
  33.  
  34. %    FUNCTION GetNextEvent(mask: INTEGER; VAR theEvent: EventRecord): BOOLEAN;
  35.     boolean procedure GetNextEvent(mask,theEvent);
  36.         name theEvent;
  37.         short integer mask; ref(MacEvent) theEvent;
  38.     begin
  39.         ref(MacEvent) localEvent;
  40.         localEvent:-theEvent;
  41.         ToolboxSystemTask;
  42.         GetNextEvent:=ToolboxGetNextEvent(mask,localEvent.what);
  43.         theEvent:-localEvent;
  44.     end;
  45.  
  46. %    FUNCTION WaitNextEvent(mask: INTEGER; VAR event: EventRecord;
  47. %                     sleep: LONGINT; mouseRgn: RgnHandle): BOOLEAN;
  48.     boolean procedure WaitNextEvent(mask,event,sleep, mouseRgn);
  49.         name event;
  50.         short integer mask; ref(MacEvent) event;
  51.         integer sleep; integer mouseRgn;
  52.     begin
  53.         ref(MacEvent) localEvent;
  54.         localEvent:-Event;
  55.         ToolboxSystemTask;
  56.         WaitNextEvent:=ToolboxWaitNextEvent(mask,localevent.what,sleep,
  57.                                         mouseRgn);
  58.         Event:-localEvent;
  59.     end;
  60.  
  61. %    FUNCTION StillDown: BOOLEAN;
  62.     boolean procedure StillDown;
  63.     StillDown:=ToolboxStillDown;
  64.  
  65.  
  66. %    FUNCTION WaitMouseUp: BOOLEAN;
  67.     boolean procedure WaitMouseUp;
  68.         WaitMouseUp:=ToolboxWaitMouseUp;
  69.  
  70. %    PROCEDURE GetMouse(VAR pt: Point);
  71.     PROCEDURE GetMouse(pt);
  72.         name pt; ref(MacPoint) pt;
  73.     begin
  74.         ref(MacPoint) LocalPoint;
  75.         Localpoint:-Pt;
  76.         ToolboxGetMouse(LocalPoint.v);
  77.         Pt:-LocalPoint;
  78.     end;
  79.  
  80. %    FUNCTION TickCount: LONGINT;
  81.     integer procedure TickCount;
  82.         TickCount:=ToolboxTickCount;
  83.  
  84.  
  85. %    FUNCTION Button: BOOLEAN;
  86.     boolean procedure Button;
  87.         Button:=ToolboxButton;
  88.  
  89. %    PROCEDURE GetKeys(k);
  90.     PROCEDURE GetKeys(k);
  91.         name k; boolean array k;
  92.         ToolboxGetKeys(k);
  93.     
  94. %    FUNCTION GetDblTime: LONGINT;
  95. %    external Toolbox procedure x="$2EB80" is
  96. %    external Toolbox procedure x="$$02F0" is
  97.  
  98. %    FUNCTION GetCaretTime: LONGINT;
  99. %    external toolbox procedure x="$2EB8" is
  100. %    external toolbox procedure x="$02F4" is
  101.  
  102. end;